<template>
  <div class="box">
    <h2>Son1 子组件</h2>
    从vuex中获取的值: <label>{{ $store.state.count }}</label>
    <br>
    <button @click="handleAddOne">值 + 1</button>
    <button @click="handleAddFive">值 + 5</button>
    <button @click="handleAddTen">值 + 10</button>
  </div>
</template>

<script>
export default {
  name: 'Son1Com',
  methods: {
    handleAddOne () {
      // 这是错误的写法
      // vuex中的数据是不能够在组件中直接修改的
      // 直接修改会造成数据的状态混乱, 变得无法预测
      // this.$store.state.count++

      // 提交仓库的mutations中的方法
      this.$store.commit('addOne')
    },
    handleAddFive () {
      this.$store.commit('addFive')
    },
    handleAddTen () {
      this.$store.commit('addTen')
    }
  }
}
</script>

<style lang="css" scoped>
.box{
  border: 3px solid #ccc;
  width: 400px;
  padding: 10px;
  margin: 20px;
}
h2 {
  margin-top: 10px;
}
</style>
